package gamebook;

import java.util.List;
import persistencia.PMensajeGenerico;

public class Publicacion extends MensajeGenerico {

    private Foto foto;
    private boolean especial;

    public Publicacion() {
        //Constructor Vacio
    }

    public boolean isEspecial() {
        return especial;
    }

    public void setEspecial(boolean especial) {
        this.especial = especial;
    }

    public Foto getFoto() {
        return foto;
    }

    public void setFoto(Foto foto) {
        this.foto = foto;
    }

    /**
     * Retorna, el número de publicaciones totales, recibidas por un cierto usuario destino
     * @param usuario
     * @return 
     */
    public static int contarPorDestinatario(UsuarioGenerico usuarioGenerico) {
        int total = 0;
        total = PMensajeGenerico.contarPorDestinatarioBD(usuarioGenerico, TipoMensaje.publicacion);
        return total;
    }

    /**
     * Retorna, solamente las publicaciones, recibidas por un cierto usuario destino
     * @param usuario
     * @return 
     */
    public static List<MensajeGenerico> seleccionarPorDestinatario(UsuarioGenerico usuarioGenerico, int inicio, int fin) {
        List<MensajeGenerico> listMensaje = null;
        listMensaje = PMensajeGenerico.seleccionarPorDestinatarioBD(usuarioGenerico, TipoMensaje.publicacion, inicio, fin);
        return listMensaje;
    }

    /**
     * Retorna, solamente las publicaciones, cuyo origen sea un cierto usuario
     * @param usuario
     * @return 
     */
    public static List<MensajeGenerico> seleccionarPorOrigen(UsuarioGenerico usuarioGenerico, int inicio, int fin) {
        List<MensajeGenerico> listMensaje = null;
        listMensaje = PMensajeGenerico.seleccionarPorOrigenBD(usuarioGenerico, TipoMensaje.publicacion, inicio, fin);
        return listMensaje;
    }

    
    public static MensajeGenerico seleccionarPorFoto(Foto foto){
        MensajeGenerico mensajeGenerico = null;
        //mensajeGenerico = PMensajeGenerico.seleccionarPorFotoBD(foto);
        return mensajeGenerico;
    }

}
